// ParseStrings.cpp

// Parsovanie hracych modov a orientacnych bodov

#include "Common/Protocol/ParseStrings.h"

// Prehlad hracich modov, ak hrame vlavo
PLAY_MODE_TRANSLATION PLAY_MODES_LEFT[PM_MAX] = 
{
	{ "",						PM_Null							},
	{ "before_kick_off",		PM_BeforeKickOff				},
	{ "time_over",				PM_TimeOver						},
	{ "play_on",				PM_PlayOn						}, 
	{ "kick_off_l",				PM_KickOff_Our					},
	{ "kick_off_r",				PM_KickOff_Their				},
	{ "kick_in_l",				PM_KickIn_Our					},
	{ "kick_in_r",				PM_KickIn_Their					},
	{ "free_kick_l",			PM_FreeKick_Our					},
	{ "free_kick_r",			PM_FreeKick_Their				},
	{ "corner_kick_l",			PM_CornerKick_Our				},
	{ "corner_kick_r",			PM_CornerKick_Their				},
	{ "goal_kick_l",			PM_GoalKick_Our					},
	{ "goal_kick_r",			PM_GoalKick_Their				},
	{ "goal_l",					PM_AfterGoal_Our				},
	{ "goal_r",					PM_AfterGoal_Their				}, 
	{ "drop_ball",				PM_DropBall						},
	{ "offside_l",				PM_Offside_Our					},
	{ "offside_r",				PM_Offside_Their				},
	
	{ "penalty_kick_l",			PM_PenaltyKick_Our				},
	{ "penalty_kick_r",			PM_PenaltyKick_Their			},
	{ "first_half_over",		PM_FirstHalfOver				},
	{ "pause",					PM_Pause						}, 
	{ "human_judge",			PM_HumanJudge					}, 
	{ "foul_charge_l",			PM_Foul_Charge_Our				},
	{ "foul_charge_r",			PM_Foul_Charge_Their			},
	{ "foul_push_l",			PM_Foul_Push_Our				},
	{ "foul_push_r",			PM_Foul_Push_Their				}, 
	{ "foul_multiple_attack_l", PM_Foul_MultipleAttacker_Our	},
	{ "foul_multiple_attack_r", PM_Foul_MultipleAttacker_Their	},
	{ "foul_ballout_l",			PM_Foul_BallOut_Our				},
	{ "foul_ballout_r",			PM_Foul_BallOut_Their			},
	
	{ "goalie_catch_ball_l",	PM_GoalieCatch_Our				}, 
	{ "goalie_catch_ball_r",	PM_GoalieCatch_Their			},
	{ "foul_l",					PM_Foul_Our						},
	{ "foul_r",					PM_Foul_Their					}, 
	{ "half_time",				PM_HalfTime						},
	{ "time_up",				PM_TimeUp						}, 
	{ "time_extended",			PM_TimeExtended					},

	// Doplnene pre novy server
	{ "free_kick_fault_l",		PM_FreeKickFault_Our			}, 
	{ "free_kick_fault_r",		PM_FreeKickFault_Their			}, 
	{ "back_pass_l",			PM_BackPass_Our					}, 
	{ "back_pass_r",			PM_BackPass_Their				}, 
	{ "catch_fault_l",			PM_CatchFault_Our				},
    { "catch_fault_r",			PM_CatchFault_Their				},
    { "indirect_free_kick_l",	PM_IndFreeKick_Our				},
	{ "indirect_free_kick_r",	PM_IndFreeKick_Their			},
};

// Prehlad hracich modov, ak hrame vpravo
PLAY_MODE_TRANSLATION PLAY_MODES_RIGHT[PM_MAX] = 
{
	{ "",						PM_Null							},
	{ "before_kick_off",		PM_BeforeKickOff				},
	{ "time_over",				PM_TimeOver						},
	{ "play_on",				PM_PlayOn						}, 
	{ "kick_off_l",				PM_KickOff_Their				},
	{ "kick_off_r",				PM_KickOff_Our					},
	{ "kick_in_l",				PM_KickIn_Their					},
	{ "kick_in_r",				PM_KickIn_Our					},
	{ "free_kick_l",			PM_FreeKick_Their				},
	{ "free_kick_r",			PM_FreeKick_Our					},
	{ "corner_kick_l",			PM_CornerKick_Their				},
	{ "corner_kick_r",			PM_CornerKick_Our				},
	{ "goal_kick_l",			PM_GoalKick_Their				},
	{ "goal_kick_r",			PM_GoalKick_Our					},
	{ "goal_l",					PM_AfterGoal_Their				},
	{ "goal_r",					PM_AfterGoal_Our				}, 
	{ "drop_ball",				PM_DropBall						},
	{ "offside_l",				PM_Offside_Their				},
	{ "offside_r",				PM_Offside_Our					},
	
	{ "penalty_kick_l",			PM_PenaltyKick_Their			},
	{ "penalty_kick_r",			PM_PenaltyKick_Our				},
	{ "first_half_over",		PM_FirstHalfOver				},
	{ "pause",					PM_Pause						}, 
	{ "human_judge",			PM_HumanJudge					}, 
	{ "foul_charge_l",			PM_Foul_Charge_Their			},
	{ "foul_charge_r",			PM_Foul_Charge_Our				},
	{ "foul_push_l",			PM_Foul_Push_Their				},
	{ "foul_push_r",			PM_Foul_Push_Our				}, 
	{ "foul_multiple_attack_l", PM_Foul_MultipleAttacker_Their	},
	{ "foul_multiple_attack_r", PM_Foul_MultipleAttacker_Our	},
	{ "foul_ballout_l",			PM_Foul_BallOut_Their			},
	{ "foul_ballout_r",			PM_Foul_BallOut_Our				},
	
	{ "goalie_catch_ball_l",	PM_GoalieCatch_Their			}, 
	{ "goalie_catch_ball_r",	PM_GoalieCatch_Our				},
	{ "foul_l",					PM_Foul_Their					},
	{ "foul_r",					PM_Foul_Our						}, 
	{ "half_time",				PM_HalfTime						},
	{ "time_up",				PM_TimeUp						}, 
	{ "time_extended",			PM_TimeExtended					},

	// Doplnene pre novy server
	{ "free_kick_fault_l",		PM_FreeKickFault_Their			}, 
	{ "free_kick_fault_r",		PM_FreeKickFault_Our			}, 
	{ "back_pass_l",			PM_BackPass_Their				}, 
	{ "back_pass_r",			PM_BackPass_Our					}, 
    { "catch_fault_l",			PM_CatchFault_Their				},
	{ "catch_fault_r",			PM_CatchFault_Our				},
	{ "indirect_free_kick_l",	PM_IndFreeKick_Their			},
    { "indirect_free_kick_r",	PM_IndFreeKick_Our				},
};

// Prehlad orientacnych bodov, ak hrame vlavo
LANDMARK_TRANSLATION LANDMARKS_LEFT[FLAG_MAX] = 
{
	{ "", NoLandmark	},
	{ "c",		C		},
	{ "c t",	CT		},
	{ "c b",	CB		},
	{ "l t",	LT		},
	{ "l b",	LB		},
	{ "l 0",	L0		},
	{ "l t 10", LT10	},
	{ "l t 20", LT20	},
	{ "l t 30", LT30	},
	{ "l b 10", LB10	},
	{ "l b 20", LB20	},
	{ "l b 30", LB30	},
	{ "r t",	RT		},
	{ "r b",	RB		},
	{ "r 0",	R0		},
	{ "r t 10", RT10	},
	{ "r t 20", RT20	},
	{ "r t 30", RT30	},
	{ "r b 10", RB10	},
	{ "r b 20", RB20	},
	{ "r b 30", RB30	},
	{ "t 0",	T0		},
	{ "t l 10", TL10	},
	{ "t l 20", TL20	},
	{ "t l 30", TL30	},
	{ "t l 40", TL40	},
	{ "t l 50", TL50	},
	{ "t r 10", TR10	},
	{ "t r 20", TR20	},
	{ "t r 30", TR30	},
	{ "t r 40", TR40	},
	{ "t r 50", TR50	},
	{ "b 0",	B0		},
	{ "b l 10", BL10	},
	{ "b l 20", BL20	},
	{ "b l 30", BL30	},
	{ "b l 40", BL40	},
	{ "b l 50", BL50	},
	{ "b r 10", BR10	},
	{ "b r 20", BR20	},
	{ "b r 30", BR30	},
	{ "b r 40", BR40	},
	{ "b r 50", BR50	},
	{ "p l t",	PLT		},
	{ "p l c",	PLC		},
	{ "p l b",	PLB		},
	{ "p r t",	PRT		},
	{ "p r c",	PRC		},
	{ "p r b",	PRB		},
	{ "g l t",	GLT		},
	{ "g l b",	GLB		},
	{ "g r t",	GRT		},
	{ "g r b",	GRB		},
};

// Prehlad orientacnych bodov, ak hrame vpravo
LANDMARK_TRANSLATION LANDMARKS_RIGHT[FLAG_MAX] = 
{
	{ "", NoLandmark	},
	{ "c",		C		},
	{ "c t",	CB		},
	{ "c b",	CT		},
	{ "l t",	RB		},
	{ "l b",	RT		},
	{ "l 0",	R0		},
	{ "l t 10", RB10	},
	{ "l t 20", RB20	},
	{ "l t 30", RB30	},
	{ "l b 10", RT10	},
	{ "l b 20", RT20	},
	{ "l b 30", RT30	},
	{ "r t",	LB		},
	{ "r b",	LT		},
	{ "r 0",	L0		},
	{ "r t 10", LB10	},
	{ "r t 20", LB20	},
	{ "r t 30", LB30	},
	{ "r b 10", LT10	},
	{ "r b 20", LT20	},
	{ "r b 30", LT30	},
	{ "t 0",	B0		},
	{ "t l 10", BR10	},
	{ "t l 20", BR20	},
	{ "t l 30", BR30	},
	{ "t l 40", BR40	},
	{ "t l 50", BR50	},
	{ "t r 10", BL10	},
	{ "t r 20", BL20	},
	{ "t r 30", BL30	},
	{ "t r 40", BL40	},
	{ "t r 50", BL50	},
	{ "b 0",	T0		},
	{ "b l 10", TR10	},
	{ "b l 20", TR20	},
	{ "b l 30", TR30	},
	{ "b l 40", TR40	},
	{ "b l 50", TR50	},
	{ "b r 10", TL10	},
	{ "b r 20", TL20	},
	{ "b r 30", TL30	},
	{ "b r 40", TL40	},
	{ "b r 50", TL50	},
	{ "p l t",	PRB		},
	{ "p l c",	PRC		},
	{ "p l b",	PRT		},	
	{ "p r t",	PLB		},
	{ "p r c",	PLC		},
	{ "p r b",	PLT		},
	{ "g l t",	GRB		},
	{ "g l b",	GRT		},
	{ "g r t",	GLB		},
	{ "g r b",	GLT		},
};
